package com.xydtech.workflow.service;

import com.xydtech.workflow.domain.WflApprauthor;
import com.xydtech.workflow.domain.WflFlowstep;

import java.util.List;

/**
 * 流程审批权限列Service接口
 *
 * @author JHON
 * @date 2021-05-27
 */
public interface IWflApprauthorService {

    /**
     * 查询流程审批权限列列表
     *
     * @param versionId 流程版本号
     * @param stepId 流程节点号
     * @return 流程审批权限列集合
     */
    public List<WflApprauthor> selectWflApprauthorList(Long versionId, Long stepId);

    /**
     * 查询流程步骤审批权限
     *
     * @param versionId 流程版本号
     * @param stepId 流程节点号
     * @return 流程审批权限列集合
     */
    public List<WflApprauthor> selectStepApprAuthorList(Long versionId, Long stepId);

    /**
     * 新增流程审批权限列
     *
     * @param versionId 流程版本号
     * @return 结果
     */
    public int insertWflApprauthor(Long versionId);

    /**
     * 查询可以退回的流程节点步骤
     * @Title: selectApprBackStep
     * @param versionId
     * @param orderNum
     * @return java.util.List<com.xydtech.workflow.domain.WflFlowstep>
     * @exception
     * @author JHON
     * @Date 2021/5/27 15:54
     **/
    List<WflFlowstep> selectApprBackStep(Long versionId, Long orderNum);

    /**
     * 删除流程审批权限列信息
     *
     * @param versionId 流程审批权限列ID
     * @return 结果
     */
    public int deleteWflApprauthorById(Long versionId);
}
